Databases are useful for storing, retrieving, and organizing large amounts of information. However, database queries are typically required to be compliant with particular rules specified by the underlying database. Such requirements pose challenges to widespread adoption of database technology, especially where specialized training is required to allow ordinary users to use a database. Natural language queries are sometimes used to attempt to bridge the communication gap between users and databases.